package com.sc.VenusQueryBeta.contract.account.daikuan;

import com.hengjun.kingstar.sdk.base.BasePresenter;
import com.hengjun.kingstar.sdk.base.IBaseActivity;
import com.hengjun.kingstar.sdk.base.IBaseModel;
import com.sc.VenusQueryBeta.model.bean.account.CurrencyListBean;
import com.sc.VenusQueryBeta.model.bean.account.daikuan.DaiKuanBean01;

import io.reactivex.Observable;

/**
 * Created by Administrator on 2018/10/18.
 */

public interface DaiKuan01Contract {
    abstract class DaiKuanPresenter extends BasePresenter<IDaiKuan01Model, IDaiKuan01Activity> {
        //加载贷款明细数据
        public abstract void getDaiKuan01(String serverAddress, String projectName, int serverPort, int clientindex,
                                          String clientAppmsgnum,String currencynameCN);

        public abstract void queryAllCurrencyList(String serverAddress, String projectName, int serverPort);

        /**
         * 加载更多test list
         */
        public abstract void getMoreDaiKuan01(String serverAddress, String projectName, int serverPort, int clientindex,
                                              String clientAppmsgnum,String currencynameCN);
    }
    interface IDaiKuan01Model extends IBaseModel {

        Observable<CurrencyListBean> queryAllCurrencyList(String serverAddress, String projectName, int serverPort);

        //贷款明细
        Observable<DaiKuanBean01> getDaiKuan01(String serverAddress, String projectName, int serverPort, int clientindex, int start, int limit,
                                               String clientAppmsgnum,String currencynameCN);
    }
    interface IDaiKuan01Activity extends IBaseActivity {

        /**
         *获贷款01數據成功
         * @param daiKuanBean01
         */
        void showDaikuanData1Success(DaiKuanBean01 daiKuanBean01);

        void showNetworkError(Throwable throwable);

        /** 显示加载更多错误
         */
        void showLoadMoreError();

        void showqueryAllCurrencyList(CurrencyListBean CurrencyListBean);

        /**
         * 显示没有更多数据
         */
        void showNoMoreData();
    }

    }
